# -*- coding: utf-8 -*-
"""
@Author: zyx
@Date: 2024/11/28 15:31
@FileName: configs.py
@Description: 相关配置
"""

# 一级分类与 data/papers 下子目录需要匹配
TAGS_DICT = {
    # 分子设计与发现
    "mol_design_discover": [
        "药物发现", "虚拟筛选", "药物设计", "材料设计", "FBDD", "QSAR", "预测建模", "反应预测", "预测毒性",
        "分子属性预测", "过程优化", "分子生成", "分子指纹", "分子优化", "分子动力学模拟", "生物医学研究", "高通量筛选", "毒性筛选",
        "计算化学", "毒理学", "蛋白质靶标", "3D drug design", "protein pockets", "3D-Scaffold",
        "binding affinity", "inhibitors", "药物管道", "clinical trials", "伦理考虑", "监管影响",
        "SARS-CoV-2 Main Protease", "SMILES", "AlphaFold"
    ],
    # 化学合成反应预测与优化
    "synt_react_pred_optim": [
        "化学信息学", "合成设计", "分子表示", "反应产物预测", "反应表现预测", "反应条件筛选", "合成预测", "回溯合成", "条件生成模型",
        "反应规则", "高通量实验", "自动化合成", "交叉偶联反应", "化学空间"
    ],
}

def get_tags(tag_name="all_tags"):
    if tag_name == "all_tags":  # 返回所有的叶子标签
        return set([value for sub_list in TAGS_DICT.values() for value in sub_list])
    else:  # 返回指定tag下去重的叶子标签
        return set(TAGS_DICT[tag_name])
